iT邦幫忙

2023 iThome 鐵人賽

DAY 2
0
Software Development

Laravel 後端菜鳥可以知道的流程概念系列 第 2

打code前先做個夢:網站功能設計、線稿圖

  • 分享至 

  • xImage
  •  

蛤?先做個夢?

這三十天的文章,我預計是要搭配我的購物車專案進行舉例。在面試好想工作室的時候,我曾被問到一題是:你有拿你學的code做過什麼東西嗎?我心想,我就是白紙一張,要怎麼做東西呢?

再看一次這個問題,我想我會改變一下答案:我想要做出___網站/功能!

有個想做的專案,更能加強自己的學習動機、縮小一點需要專注的範圍,以及具象化的例子幫助自己理解內容。

所以,先來做個夢吧!

做專案開始預備備

要開始專案之前,首先要先有相關的功能規劃,這部分通常在接案時業主會提供,且請設計師製作設計稿。實際拿到手就會是功能需求說明、流程圖、線稿圖等文件。

不過因為是自己的side project,所以自己就要身兼PM思考規劃一下。

功能規劃

初步功能設想

首先是功能部分,我的專案場景是辦公室文化中的大家揪團團購,待過辦公室應該都多少有碰過吧?會有人發起、拿著菜單問要不要一起買,湊免運或打折,等東西統一寄到辦公室後再分給各個購買人。

所以我將功能區分以下:

大項 功能 權限 備註
團購 發起/建立團購 create 會員身分
查看團購內容 read 所有人
編輯團購內容 update 發起人
刪除團購 delete 發起人
團購內產品 新增品項 create 發起人、會員
查看品項 read 所有人
修改品項 update 發起人
刪除品項 delete 發起人
會員 新增/註冊會員 所有人 這個專案我偷懶只想綁定 line 登入,無其他會員功能
購物車 加入購物車 create 會員
查看購物車 read 會員
更新購物車品項數量 update 會員
刪除購物車品項 delete 會員
訂單 成立訂單 create 會員
查看訂單 read 會員、發起人
修改訂單 update 發起人
取消訂單 soft delete 發起人

最理想是還要串接金流,讓大家可以直接付款,但涉及一些還沒思考完的商業邏輯,暫且先不列入。(如:先付款後,商家說部分商品無法提供/不足量,又要退款等問題)

功能規劃文件

除了上述表格外,在其他專案我也會依照需求使用心智圖、流程圖表達,一邊製作這些文件的過程中,也是整理自己心中的想法,幫助後面撰寫程式碼時順利進行。

心智圖:
通常使用 xmind 軟體

https://ithelp.ithome.com.tw/upload/images/20230916/20162893nbMY8wH0FU.png

簡易流程圖:
通常用 ppt 繪製,這裡為了舉例畫得有點太過簡單,例如只有檢查是否已經登入會員,應該還有更多檢驗項目。實際想得越完整開發越輕鬆。
https://ithelp.ithome.com.tw/upload/images/20230916/201628935FY2swe4tA.png

功能規劃整理

當功能都列出來後,可以進行歸納整理,看上面的功能表格或心智圖,可以看到每個功能幾乎都有 Create、Read、Update、Delete 等 CRUD 功能,只有會員功能我想要連結 Line 第三方登入,亦不提供管理者任何會員資料修改刪除,故僅需要create 功能。

這個規劃整理步驟,可以在實務上接案時便於估算工作量、後端要開幾支API等。

線稿圖

如果是接案,線稿圖通常會由業主提供。有時候業主也只有提供線稿圖,就要自己依需求轉換其他圖表,但目的都是幫助自己更完整了解業主的需求,以便進行後續開發。總歸一句,符合客戶需求的才是好的專案!

這個專案主要是想練習簡單的前端、以及後端 Laravel 框架的使用練習,所以版面上就沒有太多著墨,為了練習,初嘗試使用 Figma 稍微規劃前端設計頁面。(太不會用了….到時候應該相差十萬八千里吧哈)

https://ithelp.ithome.com.tw/upload/images/20230916/20162893e9GY8lcOrG.png
https://ithelp.ithome.com.tw/upload/images/20230916/20162893SLIh6JF3l8.png

然後還是用自己熟悉的 ppt 繪製了哈哈哈

https://ithelp.ithome.com.tw/upload/images/20230916/20162893exCbiDUFGW.png
https://ithelp.ithome.com.tw/upload/images/20230916/201628939cZ98ZsR6Z.png

初步版面及功能規劃都做夢夢完了,下一步要來看看專案開始前的資料庫設計!


上一篇
鐵人開賽啦!
下一篇
資料庫規劃:Database設計、ER Diagram
系列文
Laravel 後端菜鳥可以知道的流程概念30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
Sunny.Cat
iT邦新手 3 級 ‧ 2023-09-28 00:46:09

很詳盡的規格書

Mia iT邦新手 5 級 ‧ 2023-09-30 01:36:16 檢舉

/images/emoticon/emoticon07.gif

我要留言

立即登入留言